JSX (JavaScript XML) 是 React 特有的語法擴充,讓使用者能夠在 JavaScript 裡直接寫出類似 HTML 的標籤;這種語法可以讓 UI 更直觀,更接近我們平常理解的網頁結構。
React.createElement()
這個函式,才能在瀏覽器執行Babel : JavaScript 編譯器 (compiler)
https://babeljs.io/repl
UI更直覺:使用 JSX,比原本JavaScript的函式(React.createElement())更直觀,讓程式碼更容易閱讀與維護
允許一次回傳多個元素,而不會在 DOM 中多產生額外的節點
<>
</>
→ 簡短寫法,無法加 key 或屬性<Fragment>
</Fragment>
→ 可加屬性(例如 key)例如:
return (
<>
<h1>Hello</h1>
<p>World</p>
</>
);
或是
return (
<Fragment>
<h1>Hello</h1>
<p>World</p>
</Fragment>
);
在 JSX 中,React 元件只能 return
一個根元素;如果只是想把多個元素包在一起,又不想在 DOM 多出 <div>
等等的標籤,使用 Fragment 可以避免不必要的 DOM 節點